import Vue from 'vue'
import App from './App'
import store from './store'
import router from './router'
import './plugins'
import '@/layouts/export'
import { urlArgs } from '@/api/common'
import moment from 'moment'
// import { Message } from 'element-ui'
import Vant from 'vant'
import 'vant/lib/index.css'
import '@/styles/listPage.css'
import '@/styles/formManage/listPage.css'
import '@/styles/datalist.css'
import { Notification } from 'element-ui'
import * as echarts from 'echarts'
import "video.js/dist/video-js.css"
import XLSX from 'xlsx'

Vue.prototype.$echarts = echarts
// 配置基本大小
let baseSize = 19;

// 设置 rem 函数
function setRem() {
  //当前页面宽度相对于1920px屏幕宽的缩放比例，可根据自己需要修改。
  let scale = document.documentElement.clientWidth / 1920;
  //设置页面根节点字体大小（“Math.min(scale, 2)” 指最高放大比例为2，可根据实际业务需求调整）
  document.documentElement.style.fontSize = baseSize * Math.min(scale, 2) + 'px'
}
setRem(); //初始化

// 适配 - 重置函数
function resetRem(num) {
  if (num) baseSize = Number(num);
  setRem();
}
window.resetRem = resetRem; // 全局可调用(其他方式也可)

// 改变窗口大小时重置 rem
window.onresize = function () {
  setRem()
};
// Vue.prototype.$message = Message 
Vue.prototype.$urlArgs = urlArgs
Vue.prototype.$moment = moment
Vue.prototype.$el_Notify = Notification
// Vue.use(Mint)
Vue.use(Vant)
Vue.use(XLSX)
/**
 * @author chuzhixin 1204505056@qq.com （不想保留author可删除）
 * @description 生产环境默认都使用mock，如果正式用于生产环境时，记得去掉
 */

// if (process.env.NODE_ENV === 'production') {
//   const { mockXHR } = require('@/utils/static')
//   mockXHR()
// }

Vue.config.productionTip = false

// 定义全局时间戳过滤器
Vue.filter('formatYear', function (val) {
  if (moment(val).isValid()) return moment(val).format('YY年')
  else return ''
})

Vue.filter('formatMonth', function (val) {
  if (moment(val).isValid()) return moment(val).format('YY年MM月')
  else return ''
})

Vue.filter('formatDate', function (val) {
  if (moment(val).isValid()) return moment(val).format('YYYY-MM-DD')
  else return ''
})

Vue.filter('formatTime', function (val) {
  if (moment(val).isValid()) return moment(val).format('YYYY-MM-DD HH:mm:ss')
  else return ''
})

Vue.filter('encodePhone', function (phone) {
  if (!phone) {
    return ''
  }
  phone = String(phone).replace(/ /g, '');
  if (phone.length !== 11 || !/^[0-9]+$/.test(phone)) {
    return "无效的手机号";
  } else {
    var encryptedPhone = '';
    for (var i = 3; i < 7; i++) {
      encryptedPhone += "*";
    }
    return phone.slice(0, 3) + encryptedPhone + phone.slice(-4);
  }
})

new Vue({
  el: '#vue-admin-beautiful',
  router,
  store,
  Vant,
  render: (h) => h(App),
})
